dccp/tcp: do not inherit mc_list from parent
authorEric Dumazet <edumazet@google.com>
Tue, 9 May 2017 13:29:19 +0000 (06:29 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 12 Jun 2017 15:24:30 +0000 (15:24 +0000)
commit7c8387cf87181a6b8ef5d0178e1df6ea9132f915
tree70f9ac234aa1c727b7fef7e013ecb91340147c17
parent1a4227bd01005eb1fa45f9a8726b783076e77b6b
dccp/tcp: do not inherit mc_list from parent

syzkaller found a way to trigger double frees from ip_mc_drop_socket()

It turns out that leave a copy of parent mc_list at accept() time,
which is very bad.

Very similar to commit 8b485ce69876 ("tcp: do not inherit
fastopen_req from parent")

Initial report from Pray3r, completed by Andrey one.
Thanks a lot to them !

Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Pray3r <pray3r.z@gmail.com>
Reported-by: Andrey Konovalov <andreyknvl@google.com>
Tested-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name dccp-tcp-do-not-inherit-mc_list-from-parent.patch
net/ipv4/inet_connection_sock.c